package com.tjnu.baiyi.action;

import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.tjnu.baiyi.entity.TbComment;
import com.tjnu.baiyi.entity.TbUser;

@Scope("prototype")
@Controller("otherAlbumAction")
public class OtherAlbumAction extends BaseAction {
	private static final long serialVersionUID = 3820284227669265699L;

	// 对某个相册点赞（未在页面中使用，等待研究Ajax使用action后再添加）
	public String updateAlbumHot() throws Exception {
		String id = request.getParameter("id").toString();// 获取从前台传过来的相册id
		String albumHot = request.getParameter("albumHot").toString();// 获取从前台传过来的相册id
		Boolean flag = tbAlbumDao.updateAlbumHot(Integer.parseInt(id),
				Integer.parseInt(albumHot));
		if (flag) {
			return SUCCESS;
		} else {
			return ERROR;
		}
	}

	// 对某人空间点赞（未在页面中使用，等待研究Ajax使用action后再添加）
	public String updateUserHot() throws Exception {
		String id = request.getParameter("id").toString();// 获取从前台传过来的用户id
		String userHot = request.getParameter("userHot").toString();// 获取从前台传过来的用户id
		Boolean flag = tbUserDao.updateUserHot(Integer.parseInt(id),
				Integer.parseInt(userHot));
		if (flag) {
			return SUCCESS;
		} else {
			return ERROR;
		}
	}

	// 关注某人空间（关注其空间表示对该人的关注）
	public String addFriend() throws Exception {
		// if (flag) {
		// return SUCCESS;
		// } else {
		return ERROR;
		// }
	}

	// 对相册评论（在页面中已经进行使用，研究好Ajax使用action后可在进行异步数据交互）
	public String addComment() throws Exception {
		// 获取当前登录的用户：评论需要用到该用户的id
		TbUser user1 = (TbUser) session.getAttribute("currentUser");
		// 获取当前系统的时间
		Timestamp time = getCurrentTime();
		// 获取要评论的相册id
		//String id = request.getParameter("id").toString();
		album = tbAlbumDao.findById(Integer.parseInt(id));
		// 进行评论
		TbComment comment1 = new TbComment();
		comment1.setComment(comment.getComment());
		comment1.setTbAlbum(album);
		comment1.setCommentTime(time);
		comment1.setTbUser(user1);
		try {
			tbCommentDao.save(comment1);
			return SUCCESS;
		} catch (Exception e) {
			return ERROR;
		}
	}
	

	// 获取当前时间（工具）
	public Timestamp getCurrentTime() {
		// 使用默认时区和语言环境获得一个日历
		Calendar calender = Calendar.getInstance();
		// 将Calendar类型转换成Date类型
		Date tasktime = (Date) calender.getTime();
		// 设置日期输出的格式
		SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		Timestamp time = Timestamp.valueOf(df.format(tasktime));
		return time;
	}
	
	private String id;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}
	
}
